package assetprocess;

import java.io.File;
import java.util.ArrayList;

public class ReadFile {

	//預設的檔案放置路徑
	private String dirName = "D:/AssetXML";
	private String[] file_Name = null;
	private String[] file_Path = null;

	/**
	 * 讀取目錄下的資料
	 * @return 回傳多個檔案路徑
	 */
	public String[] doReadFile() {
		getfile_Name();
		readFile();

		return file_Path;
	}

	/**
	 * 設定讀取的檔案目錄
	 * @param dirName
	 */
	public void setDirPath(String dirName) {
		this.dirName = dirName;
	}

	/**
	 * 取得檔案目錄下的資料
	 */
	private void getfile_Name() {
		//目錄
		File dir = new File(dirName);
		file_Name = dir.list();
	}

	/**
	 * 取得檔案資料下的每個XML檔案目錄路徑
	 */
	private void readFile() {
		ArrayList<String> filePath = new ArrayList<String>();
		if (file_Name == null) {
			//System.out.println("have no file");
		} else {
			for (int i = 0; i < file_Name.length; i++) {
				if (isXML(file_Name[i])) {
					filePath.add(dirName + file_Name[i]);
				}
			}
			file_Path = filePath.toArray(new String[filePath.size()]);
		}
	}

	/**
	 * 判斷是不是XML檔案
	 * @param filename 輸入檔案名稱
	 * @return 回傳是否為XML檔
	 */
	private boolean isXML(String filename) {
		return (filename.toLowerCase().endsWith(".xml")) ? true : false;
	}

}
